import java.util.Scanner;

class Main {

	public static void main(String[] args) {

		Scanner in = new Scanner(System.in);

		Fraction a = new Fraction(in.nextInt(), in.nextInt());

		Fraction b = new Fraction(in.nextInt(), in.nextInt());

		a.print();

		b.print();

		a.plus(b).print();

		a.multiply(b).plus(new Fraction(5, 6)).print();

		a.print();

		b.print();

		in.close();

	}

}

public class Fraction {
	int a;
	int b;

	Fraction(int a, int b) {
		this.a = a;
		this.b = b;
		this.simplify();
	}

	double toDouble() {
		// 将分数转换为double
		return a / b;
	}

	public int getGCD(int x, int y) {
		// 求x和y的最小公约数
		int z = 1;
		while (x % y != 0) {
			z = x % y;
			x = y;
			y = z;
		}
		return z;
	}

	void simplify() {
		// 化简
		int gcd;

		while ((gcd =getGCD(a, b)) != 1) {
			// gcd = getGCD(a, b);
			// System.out.println("gcd is :"+gcd);

			// if (((a / gcd) != 1) || ((b / gcd) != 1)) {
				a /= gcd;
				b /= gcd;
			// }
		}

	}

	Fraction plus(Fraction r) {
		// 将自己的分数和r的分数相加，产生一个新的Fraction的对象。
		Fraction f = new Fraction(a, b);
		// System.out.println("in plus");
		// r.print();
		// this.print();
		f.a = r.a * this.b + this.a * r.b;
		f.b = r.b * this.b;
		// f.print();
		f.simplify();
		return f;

	}

	Fraction multiply(Fraction r) {
		// 将自己的分数和r的分数相乘，产生一个新的Fraction的对象。
		Fraction f = new Fraction(this.a, this.b);
		f.a *= r.a;
		f.b *= r.b;
		f.simplify();
		return f;

	}

	void print() {
		// 将自己以“分子/分母”的形式输出到标准输出，并带有回车换行。如果分数是1/1，应该输出1。当分子大于分母时，不需要提出整数部分，即31/30是一个正确的输出。
		if (a % b == 0) {
			// a能整除b
			System.out.println(a/b);
		} else {
			System.out.println(a + "/" + b);
		}

	}

}